import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'

// 全局引入 -> 只要引入一次, 项目中均可使用
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
Vue.use(ElementUI)

import "@/directives"; // 全局指令

import "@/styles/reset.css";

// Element 为 Vue.prototype 添加了全局方法 $message。
// import { Message,MessageBox } from 'element-ui';
// Vue.prototype.$message = Message;  // 所有的Vue实例均可以访问
// Vue.prototype.$alert = MessageBox.alert;  // 所有的Vue实例均可以访问
// Vue.prototype.$confirm = MessageBox.confirm;  // 所有的Vue实例均可以访问
// Vue.prototype.$prompt = MessageBox.prompt;  // 所有的Vue实例均可以访问

Vue.config.productionTip = false


// Vue中自定义插件  
// 1. 如何自定义插件
//  a. 插件就是一个有install方法的对象  
//  b. Vue.use() 也可以直接接受一个函数  => install函数

/* let myPlugins = {
  install(Vue, options) {
    // Vue => 构造函数Vue 
    // options  => 插件配置, Vue.use() 注册时传入
    console.log("这是我的插件", Vue);
    console.log("这是我的插件", options);


    // 可以根据构造函数Vue注册全局的 属性/方法 组件 指令 混合

    Vue.prototype.$a = 1;
    Vue.prototype.$b = 2;

    Vue.component("com-a",{

    })

    Vue.directive("color",function(){})

    Vue.mixin({

    })


  }
}


Vue.use(myPlugins, { a: 1, b: 2 }); */


import myPlugins from './Plugins/myPlugins';
Vue.use(myPlugins);




new Vue({
  router,
  store,
  render: h => h(App)
}).$mount('#app')
